Skip to content

feat(admin): add bulk resource rename with prefix and serial numbers - #277

Merged
trtajim merged 1 commit into
mainfrom
feat/resource-bulk-rename
Sep 2, 2026
Merged

feat(admin): add bulk resource rename with prefix and serial numbers#277
trtajim merged 1 commit into
mainfrom
feat/resource-bulk-rename

Conversation

@trtajim

@trtajim trtajim commented Sep 2, 2026

Copy link
Copy Markdown
Member

Summary by CodeRabbit

  • New Features

    • Added bulk renaming for resources within a node.
    • Administrators can choose a name prefix and starting number, preview resulting names, and submit the update from a modal.
    • The bulk rename option appears for users with editing permission when resources are available.
  • Bug Fixes

    • Added validation and feedback for invalid or unsuccessful rename requests.
  • Tests

    • Added coverage for permissions, numbering, custom starting values, redirects, and saved resource names.

@coderabbitai

coderabbitai Bot commented Sep 2, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Team

Run ID: 5c475572-8f68-4f65-a288-e34bd551e8b1

📥 Commits

Reviewing files that changed from the base of the PR and between 7052f51 and 1e01605.

📒 Files selected for processing (5)
  • app/Http/Controllers/Admin/ResourceController.php
  • resources/js/components/admin/BulkRenameModal.vue
  • resources/js/pages/admin/Node.vue
  • routes/admin.php
  • tests/Feature/AdminResourceTest.php

📝 Walkthrough

Walkthrough

Adds bulk renaming for node resources. Admins can configure a prefix and starting number, preview generated names, submit the rename request, and receive success or validation feedback.

Changes

Bulk resource renaming

Layer / File(s) Summary
Backend rename flow
app/Http/Controllers/Admin/ResourceController.php, routes/admin.php, tests/Feature/AdminResourceTest.php
Adds a permission-protected route and transactional controller method. Resources are renamed in ID order with sequential, zero-padded numbers. Tests cover permissions, numbering, redirects, sessions, and persistence.
Bulk rename modal
resources/js/components/admin/BulkRenameModal.vue
Adds configurable prefix and starting-number inputs, live previews, Inertia submission, validation handling, loading states, and empty-resource guards.
Node page integration
resources/js/pages/admin/Node.vue
Adds modal state, the Bulk Rename action, and modal wiring for editable nodes that contain resources.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Sequence Diagram(s)

sequenceDiagram
  participant Admin
  participant NodePage
  participant BulkRenameModal
  participant ResourceController
  participant NodeResources
  Admin->>NodePage: Select Bulk Rename
  NodePage->>BulkRenameModal: Open with node and resource count
  Admin->>BulkRenameModal: Enter prefix and start number
  BulkRenameModal->>ResourceController: Submit bulk rename request
  ResourceController->>NodeResources: Rename resources in ID order
  NodeResources-->>ResourceController: Return renamed count
  ResourceController-->>BulkRenameModal: Redirect with success or validation error
  BulkRenameModal-->>Admin: Close modal or display error
Loading
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/resource-bulk-rename

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@trtajim
trtajim merged commit b4119df into main Sep 2, 2026
5 of 6 checks passed
@trtajim
trtajim deleted the feat/resource-bulk-rename branch September 2, 2026 06:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant